﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using vensoft.Entities;
using vensoft.BussinesLogic;

namespace vensoft.Win32
{
    public partial class frmGestionarUsuario : Form
    {
        IUsuarioBL usuario;
        IPersonalBL personalBL;

        public frmGestionarUsuario()
        {
            InitializeComponent();
            usuario = new UsuarioBL();
            personalBL = new PersonalBL();
        }

        private void txtBuscarProv_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
            {
                usuarioBindingSource.DataSource = usuario.GetAllFromUsuarioByNombre(txtBuscarUsuario.Text);
            }
        }

        private void frmGestionarUsuario_Load(object sender, EventArgs e)
        {
            usuarioBindingSource.DataSource = usuario.GetAllFromUsuario();
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void btnActualizarDatos_Click(object sender, EventArgs e)
        {
            usuarioBindingSource.DataSource = usuario.GetAllFromUsuario();
        }

        public Usuario CurrentUsuario
        {
            get { return usuarioBindingSource.Current as Usuario; }
            set
            {
                usuarioBindingSource.DataSource = value;
            }
        }

        private void btnEliminar_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("¿Esta seguro que desea salir?", "ALERTA", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                usuario.EliminarUsuario(CurrentUsuario.Cod_Personal);
                MessageBox.Show("Usuario Eliminado", "!");
                usuarioBindingSource.ResetBindings(true);
            }
        }


        private void btnNuevo_Click(object sender, EventArgs e)
        {
            frmAEUsuario usuario = new frmAEUsuario();
            usuario.Nuevo();
            usuario.ShowDialog();
        }

        private void btnEditar_Click(object sender, EventArgs e)
        {
            frmAEUsuario usuario = new frmAEUsuario();
            usuario.CurrentUsuario = CurrentUsuario;
            usuario.Personal = personalBL.GetFromPersonalByDescripcion(CurrentUsuario.DNI);
            usuario.Editar();
            usuario.MostrarBoton = 1;
            usuario.ShowDialog();
        }
    }
}
